package store

import (
	"cgs-server/server/cgs/app/models"
	"cgs-server/server/cgs/app/models/dto"
	v1 "cgs-server/server/cgs/app/models/v1"
	"cgs-server/server/cgs/app/models/vo"
	"cgs-server/server/model"
)

type AppStore interface {
	Get(app *models.App, user *model.User, opts v1.GetOptions) (*vo.App, error)

	Update(app *dto.App, user *model.User, opts v1.UpdateOptions) error

	Save(app *dto.App, user *model.User, opts v1.CreateOptions) error

	ListConfig(config *dto.Config, user *model.User, opts v1.ListOptions) (*vo.ConfigList, error)
}
